package com.cy.dda.dao.mapper.diligencing;

import com.cy.dda.model.domain.diligencing.Diligencing;
import com.cy.dda.model.dto.diligencing.DiligencingAdminListExportDTO;
import com.cy.dda.model.query.diligencing.DiligencingAdminListQuery;
import com.cy.dda.model.query.diligencing.DiligencingListQuery;
import com.cy.dda.model.vo.diligencing.DiligencingAdminDetailVO;
import com.cy.dda.model.vo.diligencing.DiligencingAdminListVO;
import com.cy.dda.model.vo.diligencing.DiligencingDetailVO;
import com.cy.dda.model.vo.diligencing.DiligencingListVO;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import tk.mybatis.mapper.common.BaseMapper;

import java.util.List;

/**
 * @Description 尽调案件 DiligencingMapper
 * @Author tanyilin
 * @Date 2019/5/29 17:13
 */
@Mapper
public interface DiligencingMapper extends BaseMapper<Diligencing> {

    /**
     * 后台-查询尽调案件列表
     * @param query
     * @return int
     */
    int selectDiligencingAdminListCount(DiligencingAdminListQuery query);

    List<DiligencingAdminListVO> selectDiligencingAdminList(DiligencingAdminListQuery query);

    /**
     * 后台-查询尽调案件详情
     * @param diligencingId
     * @return com.cy.dda.model.vo.diligencing.DiligencingAdminDetailVO
     */
    DiligencingAdminDetailVO selectDiligencingAdminDetail(@Param("diligencingId") Long diligencingId);

    /**
     * 前台-查询尽调案件客户列表
     * @param query
     * @return int
     */
    int selectDiligencingListCount(DiligencingListQuery query);

    List<DiligencingListVO> selectDiligencingList(DiligencingListQuery query);

    /**
     * 前台-查询尽调案件详情
     * @param diligencingId
     * @return com.cy.dda.model.vo.diligencing.DiligencingDetailVO
     */
    DiligencingDetailVO selectDiligencingDetail(@Param("diligencingId") Long diligencingId);

    /**
     * 后台-查询导出的尽调案件列表
     * @param query
     * @return java.util.List<com.cy.dda.model.dto.diligencing.DiligencingAdminListExportDTO>
     */
    List<DiligencingAdminListExportDTO> selectDiligencingAdminListExport(DiligencingAdminListQuery query);
}
